Repository navigation
Add deletion policy field and decision logic - #32
Conversation
|
IMO we should definitely set a default. My hunch is that most users who are familiar with ACK/Crossplane will expect Delete, since that's the default in those tools. But apart from the familiarity, either option is fine with me. I'd say we go with Delete by default (regardless of how it was created) and then adjust it once we have customer feedback or when we get to the resource adoption implementation.
On the surface, the delete protection check seems like an obvious one to keep but unsure about the Nexus endpoint one since I haven't reviewed the PR just yet (will do shortly). In general, my preference is to keep the operator's own checks to a minimum, make tcloud the source of truth, and only add operator side checks when it's obvious or necessary (e..g the namespace CRD only has basic validation and leaves the rest to tcloud) |
bda7408 to
1473a1d
Compare
jaypipes
left a comment
There was a problem hiding this comment.
getting closer @niyomukiza-mechack! :)
1473a1d to
63d97ba
Compare
tomba7
left a comment
There was a problem hiding this comment.
Thanks @niyomukiza-mechack
What was changed
Adds the deletion policy field and the decision logic for deleting a Temporal Cloud namespace.
pkg/deletion: shared logic for any Temporal Cloud resource: resolving the policy,Preflight(decisions that need no Cloud call: Retain, never created).controller/namespace/delete.go: the namespace rules (Observed,Decide), matching Temporal Cloud's delete behavior. Only an Active namespace can be deleted; delete protection, Nexus endpoints, and suspension block it; a namespace whose creation time doesn't match the one the operator recorded is never deleted.Issue #9